// FileDropTargetWindow.h: interface for the FileDropTargetWindow class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_FILEDROPTARGETWINDOW_H__D5C6A800_3CD1_4CEA_80C6_76CAB23D9E64__INCLUDED_)
#define AFX_FILEDROPTARGETWINDOW_H__D5C6A800_3CD1_4CEA_80C6_76CAB23D9E64__INCLUDED_

#include <juce.h>
#include "FileDropTargetComponent.h"
#include "KetonalConfig.h"
class Ketonal;

class FileDropTargetWindow  : public Component, public ChangeBroadcaster, public FileDragAndDropTarget
{
	public:
		FileDropTargetWindow(Ketonal *_parent, KetonalConfig *_config);
		~FileDropTargetWindow();
		bool isInterestedInFileDrag (const StringArray &files);
		void fileDragEnter (const StringArray &files, int x, int y);
		void fileDragMove (const StringArray &files, int x, int y);
		void fileDragExit (const StringArray &files);
		void filesDropped (const StringArray &files, int x, int y);
		bool isDropReady();
		bool isRunning();
		void paint(Graphics &g);
		void resized();

	private:
		FileDropTargetComponent *targetComponent;
		Ketonal *parent;
		KetonalConfig *config;
		bool dropReady;
		bool running;
};

#endif // !defined(AFX_FILEDROPTARGETWINDOW_H__D5C6A800_3CD1_4CEA_80C6_76CAB23D9E64__INCLUDED_)
